Noratetsu Lab

動じないために。

タグの定義・詳細

ToDo Manager

ToDo俯瞰用自作ツール。
実際にこれで管理していくというよりは、自分が欲しているのはどういう機能・レイアウトなのかを知るための実験として作った。

ちなみにTopic ManagerはToDo Managerのレイアウトを踏襲して作っている。(用途は違っている。)

記事

Screenshot

画像

Backlinks

他の「のらてつ製デジタルノートツール」カテゴリの語句

「ToDo Manager」タグの記事一覧

2022/09/30

ツール製作日誌:トピック管理ツール

 4ヶ月ほど前に、GTD的な「プロジェクト」の名称はどうあるべきかという話題から(それには答えが出ていない)、そもそもタスクといわゆるプロジェクトはどういう関係にあり、どう管理したら良さそうかということを考えた。


 その後、自分なりにそれを体現したツールを作ってみた。例によって他の人が使えるように公開しているわけではないのだが、ツールの話を通してコンセプトを言葉にして書いておけたらと思う。

 さてツールの外観はこんな感じ。(例として書いてある項目は完全に適当に作ったものなので深く考えないでいただきたく。)

画像

 各エリアの意味は以下の通り。なお全てのToDoが「コンテクストごとのToDoリスト」のいずれかに配置される。そこに無ければ無いですね、ということである。
画像

 レイアウトは前に紹介した自作のタスク管理ツールと似ているがツール製作日誌:タスク&スケジュール把握ツール、プロジェクトの考え方などは大きく違っている。
 今回のツールは「Topic Manager」と名付けた通り、「トピック」をメインの単位としており、その下にまた「トピック」あるいは「ToDo」が属しているのが基本の形になっている。すなわちトピックとToDoの二種類のデータによって構成されているのだが、一方でトピックとToDoはプログラム上は同じ形のデータとして扱われており、ボタンひとつで切り替えることができる。今はこっちとして解釈する、という選択によって分けられているだけである。
 トピックには「企画」「日程」「目標」の三種類があり、それぞれ次のような意味合いを持たせている。

  • 企画:実行して成し遂げる必要のある、いわゆるプロジェクト
  • 日程:イベント・会合等の日にちをメモするもの(「締切日」は含まない)
  • 目標:こうしたい、こうなりたいという類の個人的かつ気分的な思い

 日程トピックに締切日は含まないというのは、締切を扱えないということではなく、個々のToDoに設定することができるので日程として用意する必要がないという意味である。またToDoには締切とは別に目標日を設定することもできる。
 以上を踏まえて、画面上の文字色や背景色による意味付けを説明すると以下の通り。なお右上のスケジュール欄の項目はマウスオーバーで日にちを確認できるようにしてある。

画像

 具体的にやるべきことを生み出す大本になっているのがトピックであり、ほとんどのToDoはいずれかのトピックに属し、また必要に応じてトピックの下にトピックが入れ子に作られる。トピックの粒度には決まりはなく、自分が思った大きさで自由に作る。形式的な整理のためにトピックを利用しても問題はない。
 親とするトピックはいつでも変更できるので、例えば「あ、こうしたいと私は思っているな」と思ったら目標トピックをとりあえず一番上の層(=親トピック無し)にパッと作ってしまう。
 他方、親トピックが存在しないToDoを作ることもできる。プロジェクトも目標も特にない、例で言えば「Yシャツのボタンつけ」のようなToDoだ。それは左のトピックリストの中には表示されず、右のToDo欄の中では背景色が灰色であることによって視覚的に区別される。やる必要はあることだが、何かを構築するピースにはなっていないToDoと言えるだろう。

 ところでトピックやToDoというのは具体的にどういうデータを持つものとして扱われているのか。それを伝えるために編集画面を載せることにする。(スクリーンショット内で編集画面の外が暗くなっているのは、そういうオシャレなプログラムとかではなく単に後から加工しただけ。)
 まずトピック。上から順に、トピックの名前、目的の記入欄、親トピック/ToDo指定(複数可)、種類等の選択欄、下位トピック/ToDoの一覧と作成、メモ欄(アウトライナー)となっている。

画像

 次にToDo。目的欄の下のあたりがトピックとは異なっている。各種の日付指定とコンテクストの選択ができる。
画像

 なんだかごちゃごちゃと欄があるが、別に必ず全部を使わなければならないわけではないし、実際半分以上はタイトルと親トピック、コンテクストの指定のみで済ませており、目的やメモを細かく書いてはいない(ToDoの例のようなスカスカの場合が多々ある)。必要な時に書けるためにあるのであって、書かなければならない欄ではない。書きたい時には書く欄があるというのが重要である。
 ただしあまりに自明な場合を除いて、何のためにやるのかを1行でいいから言葉にして書いておいた方が、迷走を回避できるし動機づけの強化にもなるのは確かである。欄があれば書きたくなるので、メモ欄とは区別してわざわざ目的欄を設置し、なるべく書くようにと自分を仕向けている。
 目的欄の下の日にち指定やチェックボックス、ラジオボタンの類は、項目数は一見すると多いが、要するに一覧画面でどこに表示されたら嬉しいかということなので、見た目ほど複雑ではないし億劫でもない。一覧画面の各分類の右上の+ボタンをクリックすればその欄が選択されている状態(コンテクストならコンテクスト欄にその項目が記入された状態)でToDoを作れるようにしてあるので、手間は感じていない。

 トピックとToDoの設定切り替えも自由にできるようになっている(前に作ったタスク管理ツールではそうできなかった)。一度ToDoとして色々設定したけどこれToDoじゃなくてトピックとして考えるべきだったわ、となったら右上のラジオボタンで切り替えればいいし、逆も同様にできる。切り替えても締切日等のデータは消えてしまわないようにしてあるので、元に戻すのにも不自由しない。
 左上、タイトル横の四角はチェックボックスで、チェックしてデータを保存するとアーカイブ送りになる。データは残るが、画面から表示は消えて見えなくなる。左下の削除ボタンも同様で、画面から消えるが一応データは残る。データベースになっているJSONの中に「アクティブ」「アーカイブ」「トラッシュ」の三つの箱がある状態である。

 ついでに自慢(?)すると、現時点で存在しているアクティブなトピックやToDoはうまいこと見出しをつけて加工し、mdファイルとしてLogseq用のフォルダ内に出力するようにしてあるので、(mdファイルを編集してもこのツールに反映されることはないが)他ツールとの間で横断的に情報を利用できるようになっている。
 アーカイブしたデータはTopic Manager内では表示されなくなるが、これも別途mdファイルに出力してあるので、これまでやり終えたToDoを確認するのは簡単だ。Topic Managerでは常に今とこれからに意識を向けられるようにし、なんとなくログを眺めるみたいなことにはならないようになっている。(なおconsole.logでデータベースの内容はコンソールに出力しているので、デベロッパーツール上でデータの確認自体はすぐできる。)

 このツールの一番の肝は、「目標トピック」という分類を作ったことにあるかもしれない。このツールには「やる必要のあること」だけでなく、「○○したいなあ」「~~な人間になりたいなあ」といった願望も書き込むことができる。背景色で視覚的に区別されているので、実際に遂行しなければならないものとの混在が気になることもない。(並び順も各階層で一番下になるようになっている。)
 トピックの下位にはToDoがあってもなくてもいい。つまり、トピックは「ToDoが発生しそうなトピック」でなくてよい。日程トピックについても、「とりあえず把握しておきたいけど実際には行かないかもしれない企画展」のスケジュールを書いておいてもいいのである。
 自分の行動を決定するために必要な内容がトピックとして並ぶのが大事なことで、「リストを空にしなきゃ」とか思う必要はない。むしろ、自分の願望を書いておく場でもあることから、空っぽになったら困るのである。トピックリストはタスクリストではないのでたくさん書いてあっていいのだ。
 感覚に従ってトピックを作っていくと、しばしば階層は複雑化する。そのせいでToDoが把握できなくなったら困るので、右側の欄でToDoはコンテクストのみに従ってフラットに並ぶようにしてある。こうすることで、自分の中の気持ちや問題意識に沿ってトピックが構造化されることがToDo管理の邪魔になってしまうことのないようにしている。今のところうまく働いている。

 あとは緊急・重要・要連絡・連絡待ちのToDoリストと、コンテクストごとのリストを「面」で一覧できるようにしているのも自分の中では重要なポイントだ。
 前に作ったタスク管理ツールについての記事ツール製作日誌:タスク&スケジュール把握ツール内でも、自分に必要なのは「細かくなくていいから全体がわかる形」かつ「一枚の面に整然と配置された状態」だということを書いたが、それを達成しているかどうかが私にとってはタスク管理ツールの価値の有無に直結している。そして世の中のタスク管理ツールはいまいちそうなっていなくて、カンバンツールもちょっと違う。列にはなっているが面にはなっていないからだろう。

 私自身はこれを自作したことで色々と楽になっているが、しかしこのツールはプロジェクトの全体像や自分の内面を俯瞰することを大きな目的としているので、仕事に追われに追われている人を救うための一助になるとは言い難い。「捌く」「こなす」ことを助けられるようには恐らくなっていないのである。
 そもそも全体像なんか関係なく目の前に発生するものを次々片付けないといけないような仕事では、トピックを立てるということに意味がないかもしれない。しかし逆に、そういう仕事の助けになるタスク管理ツールなら既に巷に溢れているような気がする。
 そして既存のタスク管理ツールがいずれも役に立たないほど多忙ならば、おそらくそれは多忙の度合いが激しすぎるので「ツールに入力する」ということがもうネックになってしまうだろうし、そうなると如何なるツールも力不足になるのではないかと思う。強いて言えば、音声入力で項目をスイスイ作って操作できるタスク管理ツールが存在したら少しは助かるだろうか。つまりは秘書であろう。

 多忙過ぎる人を救う手立ては私にはわからないのだが、とりあえず、タスク管理ツールが抱えている「タスクそのもの以外の情報を扱いにくい」という欠点を自分なりに解消し、自分の中にある情報を実現可能性・実現必要性に関係なく書き出せるようになり、そしてそれが「遂行しなければならないこと(いわゆるタスク)」の邪魔にならないように視覚的・位置的に区別されていることで、ごちゃごちゃあるのにごちゃごちゃしていないという形を作ることはできた。
 作って使い始めてから一ヶ月以上経っているが、今のところは「ここがネックなんだよなあ」といったことは感じていない。唯一スマホから編集できないのが玉に瑕だが(内容の確認だけなら上述したようにmdファイルを通じて可能)、スマホアプリを作れれば解決するよな~ということを考え始めているので、将来的には解消させられる可能性はある。が、そもそもそんなに欲していないので別にスマホからの編集機能は要らないかもしれない。

 ただ気をつけるべきは、全てのToDoがきちんとログとして残ることを期待してしまうことだろう。
 Topic Managerに書かずに片付けてしまったことを後から書くのかどうか。アーカイブのチェックを入れるのが遅くなった時に、厳密にいつやったことなのか確かにしようとするのかどうか。
 そういうものを必ず正しく書くと決めてしまうと、恐らく「後で書かなきゃ」が溜まり始めてしんどくなって続かなくなる。「Topic Managerのログは別に完璧なものではないが、おおよそこんな感じであったということがわかれば十分だ」というスタンスを守ることが大事だろうと考えている。
 

2022/05/31

ツール製作日誌:タスク&スケジュール把握ツール

 前回タスクとプロジェクトを考えるの最後で「どういうタスク管理ツールがあったら(私個人が)嬉しいだろうか、ということも考えていきたい」と書いた。今考えて設計しているところなのだが、その前に、この話題が出る以前に考えて作ったツールについてちょっと書いておきたい。


 例によって自分用のツールなので公開はしておらず、提供していないツールについてこまごま語るのもどうかといつも思っているのだが、私と同じように「自分で作ってみたい人」の役にはいくらか立つだろうかとも思うので、(ここは私が好きに書いていい場所なのだし)細かく書いていこうと思う。
 全体像としてはこんな感じ。実際に使っているところなので全面モザイクにせざるを得ず、イメージが湧きづらくなってしまったかもしれないがご容赦いただきたい。(加えて、ちょっと間違えて異様に劣化した状態になってしまった…)

画像

 左のDetail欄で「タスク」「日程」「プロジェクト」の三種類の項目を作成することができる。それぞれを作ると右のビューが構築されていく。そして右のビューに表示されたアイテムをクリックすれば内容が左のDetail欄に表示され、編集することができる。
 なお、右のビューの上段はスケジュール欄として「日程」の項目が並び、中段・下段には「タスク」が並ぶが、中段と下段は同じ内容がそれぞれ別の基準で各リストに振り分けられている状態である。プロジェクト単位で見たければ中段を、現在の取り組みの状態を俯瞰したければ下段を見ればいいということになる。

 Detail欄は項目の種類によって少し違っているので、ひとつひとつ触れていこうと思う。まずはタスク項目。

画像

 開始日・終了日の記録というのはタスク管理の中で普通にやることだと思うが、バシッと正確に書けないこともあって(几帳面でないため)、一般的なタスク管理ツールだとちょっと記録にもやもやすることがある。そのストレスを和らげるため、日付専用のメモ欄を設けてその日付はどういうつもりで書かれたものなのかを記録できるようにしている。
 結局のところ、書き込む時に不正確さにもやもやするだけで、日が経ってしまえば厳密に何月何日のことかはどうでもよくなってくるのだが、少しでも書き込みやすくするためにズボラ仕様にしているわけである。

 次に日程項目。

画像

 日程(=特定の日付についての備忘録)というのは、実のところ様々な意味合いがあるため、区分が一種類や二種類では少し困る。と言ってあまりに細かく仕分けしても、その労力の割に意味をなさない。私にとってはこのくらいの分類が必要かつ十分かなというところだ。
 なお、ひとつのことに対して、「開催日はこの日」「関係することの締切はこの日」「そのための目標はこの日以前の完了」といったことをそれぞれ別項目として書いておくことも当然可能で、ステータスによって色分けされるのでごちゃごちゃあってもそんなに混乱しないで使えている。
 繰り返し機能はまだ作っていないが、作ろうと思えば作れるし、そのうち作るつもりでいる。

 最後にプロジェクト項目。

画像

 実装が面倒くさいから入力欄を増やしたくないという理由で全部の種類の編集を同じ場所で兼ねているのだが、案外悪くないという感じがしている。なおプロジェクト項目にはプロジェクト選択が要らないので非表示になる。

 ちなみに、一度生成した項目を編集する時には、項目の種類が変わってしまうと困るので項目選択ができないようになっている。(↓表示が薄くなっている部分。)

画像

 これを作る前までは実装を考えたことがない挙動だったが、自分が余計なことをしないために先に回って自分の行動を封じるというのもツールを作る上では重要と感じる。他にもいくつか「ユーザーとしては当たり前の挙動だが、作る側としては目立たない要素なのであまり着目しないこと」という感じのものを実装して、少しばかりコーディング能力のレベルアップを感じている。

 なお、このツールは今のところ特定のパソコンからしか使えない(データの保存にブラウザのlocalStorageを使っているため)。しかしタスクをパソコンの前以外で確認できないのは困る。ということで、手動の原始的な方法だが、スクリーンショットを撮ってScrapboxに貼っておくことでスマホでも見られるようにすることを思いついた。せめてスクリーンショットを貼りつけるページはクリックひとつで用意できるように、と思って上部にボタンを作ってある。
 テキスト情報で出力してもいいのだが、見た目が変わると逆によくわからなくなるので、画像としてそのままの見た目で保存した方が良いと考えた。適宜出力しておけばログにもなるし、テキストではなく絵的に残しておけば、後から見ても意味を解釈し直す必要があまりないのでわかりやすいだろうと思う。
(検索、OPMLダウンロード、Markdownダウンロードのボタンが右上にあるが、これらは「実装しようと思えばできるが面倒なのでとりあえずまあいいか」という感じの未実装要素。)

 タスク管理ツールは世の中に数多存在しているし、アウトライナーなどでもタスク管理はできるし、それなのにどうしてわざわざ自分でツールを作ったのか。
 一言で言うと「どれも自分に合わないから」なのだが、それならば何がどうなっていれば自分に合うのかというのを見出すのは容易でない。抱えているタスク自体、どういう規模でどういう粒度でどういう頻度でどういう種類のものになるか人それぞれだし、更に物事を頭の中でどう認識してどう把握してどう処理しているのかも人それぞれである。ある程度はパターン化される、ということさえも言ってしまえるものかどうか怪しいところだ。仕事の種類だけならばいくらかパターン化できても、そこに個人の特性を加えると急激に傾向の分類は困難になる気がしている。
 ということで、自分は何を求めているのかを自分で知るためにも、自分にとってスムーズな使用感のツールを作るということに取り組もうと考えた。少しずつコーディング能力が上がってきて再現できる挙動が増えた分、「面白そうなことを思いついたから試したい」という娯楽感覚も動機づけとしては大きいが、前々からいずれは「思い通りにタスクを管理するツールの形」を見出したいと思っていた。

 そうして作ってみて、今自分に必要なのは「細かくなくていいから全体がわかる形」かつ「一枚の面に整然と配置された状態」だということがわかった。
 縦に並べていくだけだと、的確に構造を作れていたとしてもなんとなく「把握できていない」という不安を覚えてどうも駄目らしい(大丈夫な人は普通に大丈夫だと思うのだが)。また、例えばマインドマップや付箋ツールのように自由に配置できる形式、あるいは一枚の紙のあちこちに書いていくという形式は、書き込むには良いが結局何がどの程度あるのかよくわからず、それも結局「把握できていない」ということになってしまう。つまり、リニアではなく、しかし秩序はある状態というのを欲しているようだ。
 その結果、目的の異なる三種類の表を上段・中段・下段と配置する形に至った。今のところは納得しているし、現在のライフスタイルではこの配置が最適なのではと思っているのだが、処理しなければならないタスクの質が変わってしまえば使いにくくなるだろうとも推測している。「面」で認識したいという自分の性質は不変でも、対象が変わると形式は変わらざるを得ない。
 そういったシステムの柔軟性という意味でも、紙のノートやExcelなど汎用性の高いものを工夫することによって満足できたらよかったのだが、どうも「ぴったりハマっている専用ツール」でないと続かない。なんとなく見たくなくなって、「なんか別のやり方でやりたい」などという気持ちを生じて情報がばらばらになっていく。微妙な我慢に対して飽きるということなのだろうか。ともかく、そうなると自分で自分に発注してオーダーメイドのツールを作るしかないようである。
 そういう変に神経質な人間なのに、プログラミングを全くわからなかった状態では「与えられたツールの使い方の工夫」という形でしか努力できず、したがって常に「なんか違う」という不満に悩まされていた。しかしプログラミング(JavaScript)を覚えたことでダイレクトに「自分のためのツール」を作れるようになり、初めてサイズの合った服を着れるようになったような気持ちでいる。作るのは大変だが、それでしか自分を助けられないとなれば頑張れる。

 ここまでが前回の記事タスクとプロジェクトを考える以前のタスク管理観で考え出したことだが、前回の思索を通して、もう少し違う形のツールを作ってみたいと思い始めたところである。
 今回のツールは「プロジェクト」の扱いが緩く、単に大まかな分類として使われている面がある。タスクの質が変わった時に最も影響が出る箇所がおそらくその点で、現状では処理が簡単な分伸縮性がない形になってしまっている。その部分を解消した形式をこれから模索していきたいと思う。
 

管理人

アイコン画像

のらてつ Noratetsu

キーワード

このブログを検索

検索

ブログ アーカイブ

2025
2024
2023
2022
2021